import {
	ref,
	onMounted,
} from 'vue'

/**
 *
 * @param isTabBar - 是否是TabBar页面
 * @returns {{scollHeight: *}}
 */
export const useSystem = (isTabBar = false) => {
	//navbar高度 App 端 为 44
	let navbarHeight = getNavbarHeight();
	console.log('navbarHeight',navbarHeight)
	//系统信息

	// //App 端安全区域高度 - navbar高度
	// let safeAreaHeight = system.safeArea.height
	// //tabbar 高度
	// const tabbarHeight = getTabbarHeight(isTabBar, system)
	//页面滚动区域高度
	const scollHeight = ref(0)
	onMounted(()=>{
		const system = uni.$u.sys()
		scollHeight.value = getScollHeight(system, navbarHeight, isTabBar)
	})
	console.log('scollHeight',scollHeight.value)
	return {
		scollHeight
	}
}

/**
 * 获取navbar高度
 */
function getNavbarHeight() {
	// #ifndef MP-WEIXIN
	return 44
	// #endif

	// #ifdef MP-WEIXIN
	//微信端 navbar 安卓 高度为 48 ios高度为44
	return uni.$u.os() === 'ios' ? 44 : 48

	// #endif
}

/**
 * 获取页面滚动区域高度
 */
function getScollHeight( system,navbarHeight,isTabBar) {
    //App 安全区域高度 - navbar高度
    //#ifdef APP-PLUS
    return system.safeArea.height  - navbarHeight
    // #endif
    //小程序 窗口高度 - navbar高度
    // #ifdef MP-WEIXIN
	console.log('窗口高度',system.windowHeight)
	console.log('navbarHeight',navbarHeight)
	console.log('安全高度',system.safeArea.top)
    return system.windowHeight - navbarHeight -system.safeArea.top
    //#endif

	//#ifdef H5
	if (isTabBar) {
		return system.safeArea.height - navbarHeight - 70
	}
	return system.safeArea.height
	// #endif
}
/**
 * 获取tabbar高度
 */
function getTabbarHeight(isTabBar, system) {
	return isTabBar ? system.screenHeight - system.windowHeight - system.safeAreaInsets.bottom : 0
}